//全局配置 
require.config({
    // 控制导入模块的路径
    baseUrl: 'lib'
});

// 导入依赖的模块，触发回调函数执行，A/B存储两个模块导出的方法
require(['A', 'B'], function (A, B) {
    let total = A.sum(10, 20, 30, 40);
    console.log('求和：', total);

    let avg = B.average(10, 20, 30, 40);
    console.log('求平均：', avg);
});

/*
 AMD模块化编程思想 
   优势：
     + 在保证模块之间独立和可以相互访问的基础上
     + HTML中，无需再导入各个模块了「不存在顺序问题」
     + 也不需要自己去分析相互间的依赖关系
   不足：
     + 依赖模块的导入是“前置导入”
       + 只有把依赖模块动态导入完毕，才会触发回调函数执行「阻碍代码执行速度」
       + 代码书写的顺序也不是很方便
     + 可能存在重复导入
 */